import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class Task {

    public static void main(String[] args) {

        List<String> names = new ArrayList<>();
        
        names.add("张顺");
        names.add("公孙胜");
        names.add("张清");
        names.add("张横");
        names.add("阮小二");
        names.add("阮小七");
        names.add("卢俊义");
        names.add("阮小五");
        names.add("宋江");
        names.add("宋万");
        
        removeByIterator(names, "张");
        System.out.println(names);
        
        removeByReverseFor(names, "阮");
        System.out.println(names);
        
        // Collection还提供了removeIf方法，可以使用Lambda表达式来删除元素
        // 内部使用了Iterator实现
        names.removeIf(name -> name.contains("宋"));
        System.out.println(names);
    }

    // 通过迭代器删除集合中包含key的元素
    public static void removeByIterator(List<String> names, String key) {
        /* TODO */
    }
    
    // 通过倒序for循环删除集合中包含key的元素
    public static void removeByReverseFor(List<String> names, String key) {
        /* TODO */
    }

}